#ifndef LOGIC_UNDO_H
#define LOGIC_UNDO_H

#include <iostream>
#include <string>
#include <vector>

#include "Parser.h"
#include "Data.h"
#include "Task.h"
#include "Writer.h"
#include "CustomException.h"
#include "FileNotFoundException.h"

#include <boost\date_time.hpp>
#include <stack>

using namespace std;
using namespace boost::posix_time;
using namespace boost::gregorian;

class LogicUndo {
public:

	string undo(    stack< Data >& undoStackData, vector<Task>& tasksVector,
					Writer* _writer, Data* _data);

	
private:
	
	static const string UNDO_SUCCESS_MESSAGE ;

	static const string UNDO_ERROR_MESSAGE ;

};
#endif